package com.cy.dda.service.goodsdiligencing;

import com.cy.dda.model.Result;
import com.cy.dda.model.ao.goodsdiligencing.GoodsDiligencingReportAuditAO;
import com.cy.dda.model.ao.goodsdiligencing.ReturnVisitReportSaveAO;
import com.cy.dda.model.vo.goodsdiligencing.ReturnVisitReportAdminDetailVO;
import com.cy.dda.model.vo.goodsdiligencing.ReturnVisitReportDetailVO;

import java.util.Map;

/**
 * @Description 回访报告 接口
 * @Author tanyilin
 * @Date 2019/8/28 16:36
 */
public interface ReturnVisitReportService {

    /**
     * 回访报告详情回显
     * @param goodsDiligencingId
     * @return com.cy.dda.model.vo.goodsdiligencing.ReturnVisitReportDetailVO
     */
    ReturnVisitReportDetailVO getReturnVisitReportDetail(Long goodsDiligencingId);

    /**
     * 保存回访报告
     * @param saveAO
     * @param userId
     * @return com.cy.dda.model.Result<java.util.Map<java.lang.String,java.lang.Object>>
     */
    Result<Map<String, Object>> saveReturnVisitReport(ReturnVisitReportSaveAO saveAO, Long userId);

    /**
     * 审核 回访报告
     * @param auditAO
     * @param managerId
     * @return void
     */
    void doAuditReturnVisitReport(GoodsDiligencingReportAuditAO auditAO, Long managerId);

    /**
     * 后台-回访报告详情
     * @param goodsDiligencingId
     * @return com.cy.dda.model.vo.goodsdiligencing.ReturnVisitReportAdminDetailVO
     */
    ReturnVisitReportAdminDetailVO getReturnVisitReportAdminDetail(Long goodsDiligencingId);
}
